import request from '@/utils/request'

/**
 * 获取在线设备列表
 */
export function getOnlineDevices() {
  return request({
    url: '/device/list',
    method: 'get'
  })
}

/**
 * 刷新设备列表（发送设备发现请求）
 */
export function refreshDevices() {
  return request({
    url: '/device/discover',
    method: 'post',
    data: {
      timestamp: new Date().getTime()
    }
  })
}

/**
 * 注册当前设备
 * @param {Object} deviceInfo 设备信息
 */
export function registerDevice(deviceInfo) {
  return request({
    url: '/device/register',
    method: 'post',
    data: deviceInfo
  })
}

/**
 * 更新设备状态
 * @param {String} deviceId 设备ID
 * @param {Number} status 设备状态
 */
export function updateDeviceStatus(deviceId, status) {
  return request({
    url: '/device/status',
    method: 'put',
    data: {
      deviceId,
      status
    }
  })
}

/**
 * 更新设备名称
 * @param {String} deviceId 设备ID
 * @param {String} deviceName 设备名称
 */
export function updateDeviceName(deviceId, deviceName) {
  return request({
    url: '/device/rename',
    method: 'post',
    data: {
      id: deviceId,
      deviceName
    }
  })
}

/**
 * 获取设备详情
 * @param {String} deviceId 设备ID
 */
export function getDeviceDetail(deviceId) {
  return request({
    url: `/device/${deviceId}`,
    method: 'get'
  })
} 